Matlab:求解对数方程

您所在的位置:网站首页 lamber w函数 Matlab:求解对数方程

Matlab:求解对数方程

2024-07-16 20:38:36| 来源: 网络整理| 查看: 265

关于a,我想求解以下方程:

x = (a-b-c+d)/log((a-b)/(c-d))

其中 x、b、c 和 d 是已知的。我用 Wolfram Alpha 求解方程,结果是:

a = b-x*W(-((c-d)*exp(d/x-c/x))/x)

其中 W 是产品日志函数(Lambert W 函数)。在 Wolfram Alpha page 可能更容易看到它.

我使用了 Matlab 内置的 lambertW 函数来求解方程。这相当慢,并且是我脚本中的瓶颈。还有另一种更快的方法吗?它不必精确到小数点后 10 位。

编辑: 我不知道这个方程式这么难解。这是一张说明我的问题的图片。温度 b-d 加上 LMTD 在每个时间步长中都不同,但都是已知的。热量从红线 (CO2) 转移到蓝线(水)。我需要找到温度“a”。没想到这么难算! :P enter image description here

最佳答案

另一个选项基于更简单的 Wright ω function :

a = b - x.*wrightOmega(log(-(c-d)./x) - (c-d)./x);

假设 d ~= c + x.*wrightOmega(log(-(c-d)./x) - (c-d)./x)(即 d ~= c +b-a,x 在这种情况下是 0/0)。这相当于 Lambert W function 的主要分支, W0,我认为这是您想要的解决方案分支。

与 lambertW 一样, 有一个 wrightOmega符号数学工具箱中的函数。不幸的是,对于大量输入,这也可能很慢。但是,您可以使用我的 wrightOmegaq在 GitHub 上用于复值浮点( double 或单精度)输入。该函数更准确、完全矢量化,并且比使用内置的 wrightOmega 进行浮点输入快三到四个数量级。

对于那些感兴趣的人,wrightOmegaq 基于这篇优秀的论文:

Piers W. Lawrence, Robert M. Corless, and David J. Jeffrey, "Algorithm 917: Complex Double-Precision Evaluation of the Wright omega Function," ACM Transactions on Mathematical Software, Vol. 38, No. 3, Article 20, pp. 1-17, Apr. 2012.

该算法超越了 Halley's method 的三次收敛用于 Cleve Moler 的 Lambert_W并使用四阶收敛的寻根方法(Fritsch、Shafer 和 Crowley,1973 年)在不超过两次迭代中收敛。

另外,为了进一步加速 Moler 的 Lambert_W 使用级数展开,参见 my answer at Math.StackExchange .

关于Matlab:求解对数方程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28702752/



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭